<?php
$page = intval($_GET['list']); // значение текущей страницы из GET
$num = 10; // Переменная хранит число сообщений выводимых на станице
if ($page==0){
    $page=1; 
}

$mysql_result = Users::users_count(); 
 
if($mysql_result->fetchColumn() > 0){
    $count=$mysql_result->rowCount();
    }
$post = $count[0]; // получем значение кол-во всех записей
// Находим общее число страниц
$total = intval(($post - 1) / $num) + 1;
// Определяем начало сообщений для текущей страницы
$page = intval($page);
// Если значение $page меньше единицы или отрицательно
// переходим на первую страницу
// А если слишком большое, то переходим на последнюю
if(empty($page) or $page < 0){
    $page = 1;
}
if($page > $total){ 
    $page = $total;
}
// Вычисляем начиная к какого номера
// следует выводить сообщения
$start = $page * $num - $num;

$arr = array(':start' => $start,
             ':num'   => $num);
// Проверяем нужны ли стрелки назад
if ($page != 1){
     $pervpage = '<a href="/admin/users.php?list=1">Первая</a>
     <a href="/admin/users.php?list='. ($page - 1).'">Предыдущая</a> ';
}
// Проверяем нужны ли стрелки вперед
if ($page != $total){
    $nextpage = '  <a href="/admin/users.php?list='. ($page + 1).'">Следующая</a>
    <a href="/admin/users.php?list='.$total.'">Последняя</a> ';
}
// Находим две ближайшие станицы с обоих краев, если они есть
if($page - 2 > 0){
    $page2left = ' <a href="/admin/users.php?list='. ($page - 2) .'">'. ($page - 2) .'</a>  '; 
}
if($page - 1 > 0){
    $page1left = '<a href="/admin/users.php?list='. ($page - 1) .'">'. ($page - 1) .'</a>  ';   
}
if($page + 2 <= $total){
    $page2right = '  <a href="/admin/users.php?list='. ($page + 2).'">'. ($page + 2) .'</a>'; 
}
if($page + 1 <= $total){
    $page1right = '  <a href="/admin/users.php?list='. ($page + 1).'">'. ($page + 1) .'</a>';    
}

?>